/***********************************************************************
 * Module:  Cenovnik.java
 * Author:  Igor Spremo, Milan Stojkov
 * Purpose: Defines the Class Cenovnik
 ***********************************************************************/

package model.entity;

import java.io.Serializable;
import java.sql.Date;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;

/**
 * 
 * @author Igor Spremo, Milan Stojkov
 *
 */

@SuppressWarnings("serial")
public class Cenovnik implements Serializable {
	
	protected Integer id;
	protected Date datumPocetkaVazenja;
	protected Date datumKrajaVazenja;
	protected int verzija;

	protected Collection<StavkaCenovnika> stavkeCenovnika;

	public Collection<StavkaCenovnika> getStavkeCenovnika() {
		if (stavkeCenovnika == null)
			stavkeCenovnika = new HashSet<StavkaCenovnika>();
		return stavkeCenovnika;
	}

	public Iterator<StavkaCenovnika> getIteratorStavkaCenovnika() {
		if (stavkeCenovnika == null)
			stavkeCenovnika = new HashSet<StavkaCenovnika>();
		return stavkeCenovnika.iterator();
	}

	public void setStavkeCenovnika(
			Collection<StavkaCenovnika> newStavkeCenovnika) {
		removeAllSavkeCenovnika();
		for (Iterator<StavkaCenovnika> iter = newStavkeCenovnika.iterator(); iter.hasNext();)
			addStavkaCenovnika((StavkaCenovnika) iter.next());
	}

	public void addStavkaCenovnika(StavkaCenovnika newStavkaCenovnika) {
		if (newStavkaCenovnika == null)
			return;
		if (this.stavkeCenovnika == null)
			this.stavkeCenovnika = new HashSet<StavkaCenovnika>();
		if (!this.stavkeCenovnika.contains(newStavkaCenovnika))
			this.stavkeCenovnika.add(newStavkaCenovnika);
	}

	public void removeStavkaCenovnika(StavkaCenovnika oldStavkaCenovnika) {
		if (oldStavkaCenovnika == null)
			return;
		if (this.stavkeCenovnika != null)
			if (this.stavkeCenovnika.contains(oldStavkaCenovnika))
				this.stavkeCenovnika.remove(oldStavkaCenovnika);
	}

	public void removeAllSavkeCenovnika() {
		if (stavkeCenovnika != null)
			stavkeCenovnika.clear();
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Date getDatumPocetkaVazenja() {
		return datumPocetkaVazenja;
	}

	public void setDatumPocetkaVazenja(Date datumPocetkaVazenja) {
		this.datumPocetkaVazenja = datumPocetkaVazenja;
	}

	public Date getDatumKrajaVazenja() {
		return datumKrajaVazenja;
	}

	public void setDatumKrajaVazenja(Date datumKrajaVazenja) {
		this.datumKrajaVazenja = datumKrajaVazenja;
	}

	public int getVerzija() {
		return verzija;
	}

	public void setVerzija(int verzija) {
		this.verzija = verzija;
	}

}